System and Method for Sharing Information Using a Machine-Readable Code on a Mobile Device

ABSTRACT

A system and method for sharing communication platform data includes (a) displaying on a screen of a mobile device a first and second data field, wherein the first data field includes a QR code and the second data field includes a plurality of visual indicia corresponding to contact information corresponding to a user of the mobile device; (b) visually distinguishing on the screen at least one selected visual indicia from at least one unselected visual indicia upon receiving an input corresponding to a selection of the at least one visual indicia by the user; and (c) updating in real-time the QR code to include the contact information corresponding to the selected visual indicia and, optionally, wherein the updated QR code corresponds to a URL containing the contact information.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.17/061,906, filed Oct. 2, 2020, which is a continuation of U.S. patentapplication Ser. No. 16/163,837, filed Oct. 18, 2018, now U.S. Pat. No.10,817,584, issued Oct. 27, 2020, which claims benefit of U.S.Provisional Pat. App. No. 62/574,280, filed Oct. 19, 2017, thedisclosures of each of which are incorporated herein by reference intheir entirety.

BACKGROUND OF THE INVENTION Field of the Invention

Preferred and non-limiting embodiments are related to sharing ofinformation on computer networks and social platforms.

Description of Related Art

Digital business cards, or contact cards, such as Virtual Contact Files(.VCF), have existed since the earliest iterations of display-equippedcell phones that were capable of storing and displaying contacts. Withthe advent of smartphones came the ability to send entire contact cardsfrom one smartphone to another, so long as the recipient smartphone wasof the same brand of operating system. Smartphone manufacturers, in aprotectionist and exclusive approach to their market shares, have failedto ever introduce or adopt any sort of cross-platform support orstandardization for the format of contact information. Beyond that, inthe last decade, social networks have proliferated by the droves,ushering in a vast era of social networks needing user-specific contactinformation or profiles. The average person has presences on five socialnetworking platforms, each with their various corresponding profiles,accounts, or similar form of digital real estate. Current methods ofsharing one's social media profile are generally limited to sending orexchanging one social profile at a time.

Although QR codes are a reliable manner with which to conveyinformation, in the context of sharing contact information, a new QRcode would need to be generated each time some aspect of one's contactinformation changes. Similarly, different social circumstances woulddictate that different QR codes would need to be shared (e.g., one'sInstagram portfolio may not be appropriate to share in the context of abusiness contacts exchange). A prior art QR code which doesn't providefor the ability to customize the information embedded thereinefficiently with respect to sharing contact information in the contextof different social circumstances or among different individuals isconsidered impractical. Prior art electronic business card solutions,including 2D barcodes, sometimes allow for transmission of collectionsof contact information but are limited to static, pre-definedcombinations of content.

SUMMARY OF THE INVENTION

To overcome the deficiencies of the prior art, what is needed, and hasnot heretofore been developed, is a system and method for aggregatingall of one's contact information (e.g., a phone number; an emailaddress; a social media profile; an instant messenger ID; a websiteaddress, etc.) within one profile that can easily be shared with others,allowing them to more easily access the underlying contact information.Thus, for example, one's online social media profiles such as Facebook,Snapchat, and Instagram may be grouped and shared alongside othercontact information like one's email address and phone number. One'ssocial media presence may be visually presented and shared in a unified,yet still selective manner.

Generally provided is a computer readable medium having stored thereoninstructions which, when executed by one or more processors of one ormore computers, causes the one or more processors to execute steps of amethod for sharing social media data, the method comprising the steps of(a) displaying on a screen of a mobile device a first and second datafield, wherein the first data field includes a QR code and the seconddata field includes a plurality of visual indicia corresponding tocontact information corresponding to a user of the mobile device; (b)visually distinguishing on the screen at least one selected visualindicia from at least one unselected visual indicia upon receiving aninput corresponding to a selection of the at least one visual indicia bythe user; and (c) updating in real-time the QR code to include thecontact information corresponding to the selected visual indicia and,optionally, wherein the updated QR code corresponds to a URL containingthe contact information. The contact information includes one or more ofa phone number; an email address; a profile picture; a social mediaprofile; an instant messenger ID; a website address; a username; aplatform identification; cryptographic data; and reference to a digitalasset.

A system for sharing contact information data includes (a) a firstmobile device configured to display a QR code including contactinformation corresponding to a plurality of visual indicia selected by auser of the first mobile device, wherein the QR code corresponds to aURL containing the contact information, wherein the contact informationcorresponds to the user of the first mobile device; (b) a second mobiledevice configured to scan the QR code displayed on the first mobiledevice, wherein the second mobile device is configured to at least oneof import the contact information to a contacts database on the secondmobile device and open a corresponding application or website link onthe second mobile device; and (c) a server for transmitting to thesecond mobile device a webpage displaying the contact information inresponse to receiving a query (e.g., HTTP) from the second mobiledevice. The contact information includes one or more of a phone number;an email address; a profile picture; a social media profile; an instantmessenger ID; a website address; a username; a platform identification;cryptographic data; and reference to a digital asset.

The present invention includes an active QR code that changes inreal-time based on the information that is intended to be shared. It isto be understood that while the preferred embodiment and use caseshappen to be a QR code, these teachings can be applied to anymachine-readable label, including 2D barcodes and radial codes. Theactive QR code still functions like a regular QR code passing along aset of data to a recipient of the code. The active QR code may change aninfinite amount of times as every time one shares information, onedetermines what information will be shared. An active QR code is asingle QR code that replaces thousands of static QR codes with theability to change the information embedded therein. Thus, individualsmay be able to send multiple pieces of user-specific data within asingle bundle. This may include, but is not limited to, logo images andimage paths in various sizes, network identifiers (e.g., fb is Facebook,p is phone number, n is name), application URL schemes for opening aprofile within a corresponding application, and a website URL scheme foropening a profile on a corresponding social media site.

Some aspects of the present invention may be embodied in an applicationresiding on a mobile device. Some functions may be performed whollywithin the application without reliance on a client-server connection,whereas other functions may utilize the client-server connection. Forexample, as discussed below, if both client devices have the appropriateapplication installed thereon, then no communication with the server maybe necessary to share the intended information.

It is to be understood that each communication platform or interface mayhave its own API, protocol, data formats or schema. Accordingly, thepresent invention provides for an open contribution system that allowsnew outside communication platforms, social networking platforms,payments or cryptocurrency mediums or blockchain, to add their own dataformats into the system of the present invention such that they may beoffered to users. While the one embodiment may allow for a file platformwhere the contact information includes a file or data encoded as Base64and MIME type, another file platform may be added where the contactinformation includes an identifier or URL for the system to use toretrieve the file.

The application associated with the present invention may include aninstant messenger or similar real-time communication tool. Such a toolmay allow for collaboration with one or more users or groups of usersvia splitting payments, assigning tasks, or file sharing across similarand dissimilar platforms. Users can share anything from messages toPDFs, graphic files, and link-embedded videos and interactive contentthat can interact with an entire group of other users.

In one embodiment, the system and method provides for sharinginformation for locating and/or connecting to the user's variousaccounts, profiles, or representations on computer networks and socialplatforms.

These and other features and characteristics of the present invention,as well as the methods of operation and functions of the relatedelements of structures and the combination of parts and economies ofmanufacture, will become more apparent upon consideration of thefollowing description and the appended claims, if any, with reference tothe accompanying drawings, all of which form a part of thisspecification, wherein like reference numerals designate correspondingparts in the various figures. It is to be expressly understood, however,that the drawings are for the purpose of illustration and descriptiononly and are not intended as a definition of the limits of theinvention. As used in the specification and the claims, if any, thesingular form of “a”, “an”, and “the” include plural referents unlessthe context clearly dictates otherwise.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts an application operating on a mobile device, inaccordance with one embodiment of the present invention;

FIGS. 2A-2C are screen shots depicting a dynamic QR code based ondifferent social media contact information selections in accordance withone embodiment of the present invention;

FIG. 3 is a screen shot depicting a single profile containing aplurality of contact information in accordance with one embodiment ofthe present invention;

FIG. 4 is a block diagram of a computer system according to principlesof the present invention.

FIG. 5 is a flow diagram depicting a method of sharing contactinformation data in accordance with one embodiment of the presentinvention; and

FIG. 6 is a flow diagram depicting a method of sharing contactinformation data in accordance with another embodiment of the presentinvention.

DETAILED DESCRIPTION OF THE INVENTION

For purposes of the description hereinafter, the terms “end”, “upper”,“lower”, “right”, “left”, “vertical”, “horizontal”, “top”, “bottom”,“lateral”, “longitudinal” and derivatives thereof shall relate to theinvention as it is oriented in the drawing figures. It is to beunderstood that the invention may assume various alternative variationsand step sequences, except where expressly specified to the contrary. Itis also to be understood that the specific devices and processesillustrated in the drawings, and described in the followingspecification, are simply exemplary embodiments of the invention. Hence,specific dimensions and other physical and/or processing characteristicsrelated to the embodiments disclosed herein are not to be considered aslimiting.

As used herein, the terms “communication” and “communicate” refer to thereceipt or transfer of one or more signals, messages, commands, or othertype of data. For one unit or component to be in communication withanother unit or component means that the one unit or component is ableto directly or indirectly receive data from and/or transmit data to theother unit or component. This can refer to a direct or indirectconnection that may be wired and/or wireless in nature. Additionally,two units or components may be in communication with each other eventhough the data transmitted may be modified, processed, routed, and thelike, between the first and second unit or component. For example, afirst unit may be in communication with a second unit even though thefirst unit passively receives data, and does not actively transmit datato the second unit. As another example, a first unit may be incommunication with a second unit if an intermediary unit processes datafrom one unit and transmits processed data to the second unit. It willbe appreciated that numerous other arrangements are possible.

FIG. 1 depicts an application operating on a mobile device. Theapplication may embody one or more principles of the present invention.Although the invention is described in the context of an applicationoperating on a mobile device, it is to be understood that the principlesof the invention may be embodied natively within a device and/or itsoperating system. Additionally, the orientation and placement of variousscreen elements and fields may vary. Thus, the examples shown herein arenot to be construed as limiting the scope of the invention. As shown inFIG. 1 , the application includes a screen divided into two portions,with the top portion providing a camera interface configured to captureQR codes and the bottom portion containing an active or dynamic QR code.The toggles around the QR code are configured so that the user of thedevice may tap on them to determine if that specific piece of data willbe shared or not. For example, a highlighted icon indicates that theselected contact information or underlying social media data will beshared. It is to be understood that other visual indicia may be used todesignate what will be shared or not. As soon as a selection of any ofthe icons is made, the QR code is updated to represent the underlyingdata that is to be shared. One can share as much or as little contactinformation and the QR code will reflect the choices accordingly. It isto be understood that contact information may include any informationthat is used to make contact with or identify an entity (e.g., human,electronic, tangible, intangible, etc.); and data that an entity,device, or system controls and can share. The application may alsoinclude ancillary features such as a connection history screen thatshows what information the user shared or what information was sharedwith that user. The icons displayed adjacent to the QR code may besituated in scrollable fields to accommodate additional icons that maynot all fit within the screen at the same time.

In an embodiment where use of a selected unit of information in the QRcode requires authorization, the active QR will require the user toauthenticate with one or more security mechanisms including but notlimited to two factor authentication, biometric identification, sensordata, and hardware authentication. In an embodiment where a digitalsignature is required, the user may be required to allow access tocryptographic keys, an external service may be used for validation andauthorization, or a challenge and response sequence may be initiatedwhere one or both devices must cryptographically sign or hash datagenerated by the other device as verification. It is to be understoodthat one or more components of information comprising the QR code may besynchronized with external resources such as application extensions,APIs, or communications to connect with the receiving device, such as byacting as a host or long polling a controlling host.

FIGS. 2A-2C are screen shots depicting a dynamic QR code based ondifferent social media contact information selections. As shown in FIG.2A, the user has selected contact information or other data includingtheir phone number, profile picture, Facebook, Instagram, SoundCloud,and Snapchat as the items to be shared. In FIG. 2B, the user hasselected their phone number, email address, profile picture, LinkedIn,and Facebook as the contact information items to be shared. In FIG. 2C,the user has selected their phone number, email address, profilepicture, LinkedIn, Facebook, Instagram, and Snapchat as the contactinformation items to be shared. As shown, the respective QR codes aredifferent in each of the aforementioned figures based on the data thatis embodied therein. The information encoded in the image of the QR coderepresents dynamic data, as derived from a data string that itself isdynamically modified based on the selections by the user. This datastring may be converted to a URL, which then forms the basis of the QRcode. Alternatively, the QR code may include other data formats havingthe selection embedded therein. An image container/controller listensfor changes to data and updates the QR code image upon a data changeevent. This dynamic, real-time QR code still functions like a regular QRcode passing along data to the recipient of the code. As shown, in FIG.1 , another user, utilizing his own device may point the device's cameraat the screen of the device containing the dynamic code and the QR codecan then be copied and/or translated into human-readable data on theother user's device. Alternatively, the user who created the QR code maysend the underlying data of the QR code to another user as a URL, viaSMS messaging, email, wireless communication (e.g., Bluetooth, NFC, orother radio communications), or other transport medium if the intendedrecipient does not have the capabilities of receiving or translating theQR code, either via a native function or proprietary application ontheir device. If both users have the same application that created theQR code, then the QR code may be easily exchanged through the protocolsassociated with such an application.

As shown in FIG. 3 , the captured QR code can be translated into asingle profile containing a plurality of contact information. Thissingle profile may appear in a designated application of the otheruser's device where that user may add the newly received profile to adatabase of other profiles. For example, a phone number and profilepicture may be imported into the existing contacts database on thedevice. Alternatively, the activation of a phone number displayed withinthe profile may result in the device calling that number. Furthermore,if any of the contact information that is embodied as a social mediaprofile is selected, a corresponding application (e.g., if alreadyinstalled on the device) or website link will be opened to allow theuser to view the respective online social media profile. The user mayalso edit or delete any of the profiles and/or individual contactinformation may be deleted within each profile. Alternatively, if acorresponding URL is received instead of the QR code, then followingthat URL will result in a webpage to be displayed in a browserassociated with the device. The webpage may be created by a server thatinterprets the URL in response to receiving the associated HTTP query(or other query) from the device, wherein the server then creates, inreal-time, a webpage (e.g., landing page) showing the contactinformation stored within the URL (which corresponds to what waspreviously selected in the context of the dynamic QR code). Thus, thewebpage may be a corresponding contact information page for the user whoinitially shared their information. Different URLs may result indifferent webpages depending on the content of the URL. The user who isviewing the webpage can then select any of the contact informationdisplayed on the webpage and import it into their own phone and/orfollow any links to the respective online social media profile. If theuser has the appropriate applications, the links may be intercepted andthe corresponding application may be opened on the device, instead.Alternatively, a link to the application that can generate the dynamicQR code may be on the webpage such that when the link is followed, theapplication may be installed and the contact information from thewebpage may be loaded into the application as a new profile.

The present invention may be utilized in both social and professionalcontexts. Active QR codes may be used in place of or in connection withV-cards (e.g., electronic business or personal cards that can beattached as files to emails, texts, etc.). Prior art V-cards adhere toan industry specification that limits the amount of contact details andare not extensible to the extent that social media contact informationevolves. Additionally, prior art V-cards are in the form of actual filesthat make sharing thereof less convenient. In a workplace environment,permissions may be set that dictate what social media contact data maybe shared with others via active QR codes. It is to be understood thatthe active QR codes may be implemented in other applications andscenarios. For example, today in almost every store in shopping mallsemployees carry around some sort of tablet or other mobile device. It ispossible to customize QR codes in real-time to each shopper's individualneeds. It doesn't matter if it's a man or women, shopping for shorts,shirts or maybe even shoes. One has the ability to customize each couponto fit the needs of every shopper. Utilizing preset information insideof each toggle icon around the QR code, a store could have presettoggles around the QR allowing employees to customize scannable QR codesor even be able to create URL links to send to the shoppers via SMS oremail where they can then access it. Creating a coupon that isapplicable to everyone who enters a place of business can substantiallydrive higher sales. The customer may also use the QR system to transactpayments, wherein encrypted or tokenized payment method data, such ascredit card, voucher, cryptocurrency, or Paypal® information, may beselected by the user toggling or selecting the desired method. The usermay authenticate with their payment provider by PIN or biometricidentification, at which point the Active QR conveys one-time-usepayment details and cryptographic signature as updated by the paymentprovider. Alternatively, the user could request payment method andauthorization from another user remotely, such as a minor purchasingshoes that a parent is paying for, or an employee making a purchase onbehalf of their employer.

Another scenario that many of us face but still have problems with ismobile boarding passes. For example, if one flies from Phoenix to NewYork City and one has a layover, one has to download two mobile boardingpasses, with the second one providing difficulty in downloading. Theactive QR code may deliver one mobile boarding pass for all and bychanging the destination from flight to flight, the QR code will changeon the mobile boarding pass in real-time. Thus, there will no longer beissues with searching through boarding passes to make sure that one hasthe correct one, as an ultimate boarding pass is created through use ofthe active QR code. A similar scenario is that of ticketing, whereasoftentimes, for a group to sit next to each other at an event, alltickets must be purchased at the same time by one person. However,oftentimes people take different transportation to the same event, orarrive at different times. A single Active QR in this context couldconsist of many individual tickets which a User could then distributeindividually to the other attendees so that they may have their ownticket on their own device. The Active QR containing the several ticketsof the original purchase updates automatically as individual tickets aredistributed or used.

It is to be understood that the active QR code described herein may betransferred or copied to printed or other physical, non-electronic mediaand may then be scanned therefrom in accordance with the presentinvention.

As is known in the art, URLs have been utilized for some 20+ years as afundamental address format for clients locating specific files, viainternet connection, hosted remotely on servers. URLs contain variousstandard components, all of which serve purposes in directing the serverto the requested file, resource or node. The extent of URL usage, upunto this time, is as a static coordinate and does not transmit data notalready contained on the server.

The present invention may utilize a URI-encoded Serialized Data Objectfor purposes of transmitting shared social media data or contactinformation. This URI-encoded serialized data object may be either2-dimensional or 3 dimensional and can be encoded as a URL. The URL hastwo root parts, the domain and the parameters, separated by “?”, as isstandard for URLs. The domain part can reference awebsite/page/application or can have a custom scheme used to identifythe data type. The parameter part contains the data as URL parametersafter the separator (“?”). Parameters are appended in the form“key=value” where the value is URI encoded. An implementation of thisstrategy can be pre-defined to be 2D or 3D or require a URL parameterspecifying the nature of the object.

The capabilities and purpose of traditional URLs is expanded to containreal datasets not familiar to the server, and in fact in many cases ofspecific value, does not require a server's presence or involvementwhatsoever. The use of this URL is such that the URL stores datasetsuniquely designated by the client, which can then equally do either orboth of the following: (a) URL can be sent, via Internet connection, toa server which is not familiar with the data stored in the URL, but isable to identify a given template as the appropriate apparatus to sendback to the client in order for the client to be presented with the datain a usable format. A usable format for the decoded data object may havethe data presented to the user as simple text, or a hyperlink, or anynumber of other objects; or (b) be sent from one client, via Internetconnection, to another client, without ever having to be passed througha server, nor require interaction from a server, and still be presentedto the receiving client, in a usable format, such as a hyperlink, oreven something as simple as text. This usage scenario presumes thereceiving user is already in possession of an appropriate URL EncodedData Object Presenter which enables decoding of the data contained inthe URL, allowing the data object to be presented to the user in ausable format, such as a hyperlink, or even something as simple as text,without any interaction or involvement from a remote server. This allowsfor users to create, share, and make full use of a URL Encoded DataObject without any Internet connection whatsoever.

This method of Encoding Data Objects into URLs allows for storage andtransmission of non-trivial, complex, multi-dimensional data within aURL's standard components, such as, but not limited to, a URL'sparameters. This data encoded into a URL can be encoded and packagedclient-side, and can equally be decoded and presented for use on theclient-side as well, assuming a client has a URL Encoded Data ObjectPresenter application for this purpose. The client is equally capable ofsending this data encoded URL to a server, which would simply respond tothe request by sending relevant URL Encoded Data Object Presentercomponents back to the client so that the client-side device could thendecode the data stored in the URL. There is never data processingrequired server-side, but only locally on a client's device via theURL/URI Encoded Data Object Presenter.

The URL/URI Encoded Data Object is a way of storing and sharingnon-trivial, complex, and/or multidimensional data within a traditionalURL format; the benefit of this is versatility of the data, and lack ofdependence on Internet connectivity in order for a user to share, ormake use of, the encoded data objects. The method by which the data isstored centers around expanded use of alphanumeric character and symbolcodes within the URL's standardized segments, such as the parameters. Aspecific piece of data would be preceded by a marker includingdesignated, prespecified character combinations which the URL/URIEncoded Data Object Presenter is scripted to recognize in anticipationof a piece of data following the marker. A designated, prespecifiedcharacter or symbol follows the end of the data as well in order toindicate to the URL/URI Encoded Data Object Presenter that that stringof data is complete. The start-data and stop-data indicators may bechanged for a user's given purpose as well, so long as this iscommunicated via further data encoding which would precede the datasetswithin the URL parameters in order to indicate to the receiving URLEncoded Data Object Presenter which start-data and stop-data indicatorswill be utilized in that particular URL.

As is known in the art, a URL is formatted as follows:

<scheme>://<username>:<password>@<host>:<port>/<path>;<parameters>?<query>#<fragment>.Data within the present invention may be encoded into the parametersportion of the URL. The standard URL components may remain, with theexception of the parameters. An example, may be:<scheme>://<username>:<password>@<host>:<port>/<path>;<&amp;%encoded%?a=1?b=2?c=3%endencoded%>?<query>#<fragment>,where (a) &amp—indicates to the receiving URL Encoded Data ObjectPresenter that it is now entering the Parameter of the URL; (b)%encoded%—indicates to the receiving URL Encoded Data Object Presenterthat the remainder of the parameters directly subsequent to thisindicator will be encoded data. This indicates the beginning of thesubstance of the data object; (c) ?—indicates to the receiving URLEncoded Data Object Presenter that the subsequent character will be thefirst character in the title of an isolated piece of data; (d)a—indicates to the receiving URL Encoded Data Object Presenter the titleof this piece of data; (e)=—indicates to the receiving URL Encoded DataObject Presenter that the following data will represent the valueassigned the title directly preceding this symbol; (f) 1—indicates tothe receiving URL Encoded Data Object Presenter the value assigned tothe title preceding the ‘=.’; and (g) %endencoded%—indicates to thereceiving URL Encoded Data Object Presenter the conclusion of theencoded dated segment of the URL. Equal symbols may be used to separateall values removing ambiguity. Furthermore, multiple instances of afield may be interpreted as separate arrays. This allows for anadditional dimension to the data. This is intended to be used to allowfor data points that have multiple pieces of information (e.g., Slackidentification requires a team name and a user name). Additionally,semi-colons may be used, as permitted in URLs conforming to RFC 2396.

In one embodiment, a key-value pair, wherein the value is a list withina data object, is represented as a key with values of the list separatedby equal symbols, distinct collections of lists separated by repeatedkey-value pairs in the form as follows:key1=value%20one=value%20two=value%20three&key1=val%20four=val%20five

This form of using reserved symbols to enumerate and define keys andvalues at various depths and levels of separation can represent dataobjects with nesting depth less than a pre-defined maximum depth. Inanother embodiment, certain reserved symbols denote increase or decreasein depth while other symbols denote data type such as list or value andcan be used for data objects of arbitrary nesting depth. An example ofthis may be where the semicolon is used to denote decrease of 1 level indepth, while the equal symbol denotes an increase of 1 level in depthand the plus symbol separates list elements. Some embodiments may userecursively encoding values to denote nesting depth allowing forarbitrary nesting depth. For example, a key-value pair may be URLencoded as a value for another key and the resulting key-value pair canbe URL encoded as a value for a third key; this form can be repeated anarbitrary number of times to achieve arbitrary levels of nesting depth.

The present invention, as discussed above, may be implemented on avariety of computing devices, servers, processing units, and systems,wherein these computing devices, servers, processing units, and systemsinclude the appropriate processing mechanisms and computer-readablemedia for storing and executing computer-readable instructions, such asprogramming instructions, code, and the like. As shown in FIG. 4 ,computers 900, 944, in a computing system environment 902 are provided.This computing system environment 902 may include, but is not limitedto, at least one computer 900 having certain components for appropriateoperation, execution of code, and creation and communication of data.For example, the computer 900 includes a processing unit 904 (typicallyreferred to as a central processing unit or CPU) that serves to executecomputer-based instructions received in the appropriate data form andformat. Further, this processing unit 904 may be in the form of multipleprocessors executing code in series, in parallel, or in any other mannerfor appropriate implementation of the computer-based instructions.

In order to facilitate appropriate data communication and processinginformation between the various components of the computer 900, a systembus 906 is utilized. The system bus 906 may be any of several types ofbus structures, including a memory bus or memory controller, aperipheral bus, or a local bus using any of a variety of busarchitectures. In particular, the system bus 906 facilitates data andinformation communication between the various components (whetherinternal or external to the computer 900) through a variety ofinterfaces, as discussed hereinafter.

The computer 900 may include a variety of discrete computer-readablemedia components. For example, this computer-readable media may includeany media that can be accessed by the computer 900, such as volatilemedia, non-volatile media, removable media, non-removable media, etc. Asa further example, this computer-readable media may include computerstorage media, such as media implemented in any method or technology forstorage of information, such as computer-readable instructions, datastructures, program modules, or other data, random access memory (RAM),read only memory (ROM), electrically erasable programmable read onlymemory (EEPROM), flash memory, or other memory technology, CD-ROM,digital versatile disks (DVDs), or other optical disk storage, magneticcassettes, magnetic tape, magnetic disk storage, or other magneticstorage devices, or any other medium which can be used to store thedesired information and which can be accessed by the computer 900.Further, this computer-readable media may include communications media,such as computer-readable instructions, data structures, programmodules, or other data in other transport mechanisms and include anyinformation delivery media, wired media (such as a wired network and adirect-wired connection), and wireless media. Computer-readable mediamay include all machine-readable media with the possible exception oftransitory, propagating signals. Of course, combinations of any of theabove should also be included within the scope of computer-readablemedia.

The computer 900 further includes a system memory 908 with computerstorage media in the form of volatile and non-volatile memory, such asROM and RAM. A basic input/output system (BIOS) with appropriatecomputer-based routines assists in transferring information betweencomponents within the computer 900 and is normally stored in ROM. TheRAM portion of the system memory 908 typically contains data and programmodules that are immediately accessible to or presently being operatedon by processing unit 904, e.g., an operating system, applicationprogramming interfaces, application programs, program modules, programdata and other instruction-based computer-readable codes.

With continued reference to FIG. 4 , the computer 900 may also includeother removable or non-removable, volatile or non-volatile computerstorage media products. For example, the computer 900 may include anon-removable memory interface 910 that communicates with and controls ahard disk drive 912, i.e., a non-removable, non-volatile magneticmedium; and a removable, non-volatile memory interface 914 thatcommunicates with and controls a magnetic disk drive unit 916 (whichreads from and writes to a removable, non-volatile magnetic disk 918),an optical disk drive unit 920 (which reads from and writes to aremovable, non-volatile optical disk 922, such as a CD-ROM), a UniversalSerial Bus (USB) port 921 for use in connection with a removable memorycard, etc. However, it is envisioned that other removable ornon-removable, volatile or non-volatile computer storage media can beused in the exemplary computing system environment 900, including, butnot limited to, magnetic tape cassettes, DVDs, digital video tape, solidstate RAM, solid state ROM, etc. These various removable ornon-removable, volatile or non-volatile magnetic media are incommunication with the processing unit 904 and other components of thecomputer 900 via the system bus 906. The drives and their associatedcomputer storage media discussed above and illustrated in FIG. 4 providestorage of operating systems, computer-readable instructions,application programs, data structures, program modules, program data andother instruction-based computer-readable code for the computer 900(whether duplicative or not of this information and data in the systemmemory 908).

A user may enter commands, information, and data into the computer 900through certain attachable or operable input devices, such as a keyboard924, a mouse 926, etc., via a user input interface 928. Of course, avariety of such input devices may be utilized, e.g., a microphone, atrackball, a joystick, a touchpad, a touch-screen, a scanner, etc.,including any arrangement that facilitates the input of data, andinformation to the computer 900 from an outside source. As discussed,these and other input devices are often connected to the processing unit904 through the user input interface 928 coupled to the system bus 906,but may be connected by other interface and bus structures, such as aparallel port, game port, or a universal serial bus (USB). Stillfurther, data and information can be presented or provided to a user inan intelligible form or format through certain output devices, such as amonitor 930 (to visually display this information and data in electronicform), a printer 932 (to physically display this information and data inprint form), a speaker 934 (to audibly present this information and datain audible form), etc. All of these devices are in communication withthe computer 900 through an output interface 936 coupled to the systembus 906. It is envisioned that any such peripheral output devices beused to provide information and data to the user.

The computer 900 may operate in a network environment 938 through theuse of a communications device 940, which is integral to the computer orremote therefrom. This communications device 940 is operable by and incommunication to the other components of the computer 900 through acommunications interface 942. Using such an arrangement, the computer900 may connect with or otherwise communicate with one or more remotecomputers, such as a remote computer 944, which may be a personalcomputer, a server, a router, a network personal computer, a peerdevice, or other common network nodes, and typically includes many orall of the components described above in connection with the computer900. Using appropriate communication devices 940, e.g., a modem, anetwork interface or adapter, etc., the computer 900 may operate withinand communication through a local area network (LAN) and a wide areanetwork (WAN), but may also include other networks such as a virtualprivate network (VPN), an office network, an enterprise network, anintranet, the Internet, etc. It will be appreciated that the networkconnections shown are exemplary and other means of establishing acommunications link between the computers 900, 944 may be used.

As used herein, the computer 900 includes or is operable to executeappropriate custom-designed or conventional software to perform andimplement the processing steps of the method and system of the presentinvention, thereby, forming a specialized and particular computingsystem. Accordingly, the presently-invented method and system mayinclude one or more computers 900 or similar computing devices having acomputer-readable storage medium capable of storing computer-readableprogram code or instructions that cause the processing unit 904 toexecute, configure or otherwise implement the methods, processes, andtransformational data manipulations discussed hereinafter in connectionwith the present invention. Still further, the computer 900 may be inthe form of a personal computer, a personal digital assistant, aportable computer, a laptop, a palmtop, a mobile device, a mobiletelephone, a server, or any other type of computing device having thenecessary processing hardware to appropriately process data toeffectively implement the presently-invented computer-implemented methodand system.

It will be apparent to one skilled in the relevant art(s) that thesystem may utilize databases physically located on one or more computerswhich may or may not be the same as their respective servers. Forexample, programming software on computer 900 can control a databasephysically stored on a separate processor of the network or otherwise.

FIG. 5 is a flow diagram depicting a method of sharing contactinformation data in accordance with one embodiment of the presentinvention. Step 50 is directed to displaying on a screen of a mobiledevice a first and second data field, wherein the first data fieldincludes a QR code and the second data field includes a plurality ofvisual indicia corresponding to contact information corresponding to auser of the mobile device. Step 51 is directed to visuallydistinguishing on the screen at least one selected visual indicia fromat least one unselected visual indicia upon receiving an inputcorresponding to a selection of the at least one visual indicia by theuser. Step 52 is directed to updating in real-time the QR code toinclude the contact information corresponding to the selected visualindicia and, optionally, wherein the updated QR code corresponds to aURL containing the contact information.

FIG. 6 is a flow diagram depicting a method of sharing contactinformation data in accordance with one embodiment of the presentinvention. Step 60 is directed to displaying for a first mobile device aQR code derived on a second mobile device, wherein the second mobiledevice is configured to display the QR code including contactinformation corresponding a plurality of visual indicia selected by auser of the second mobile device, wherein the QR code corresponds to aURL containing the contact information, wherein the contact informationcorresponds to the user of the second device. Step 61 is directed toimporting the contact information to a contacts database on the firstmobile device.

Although process steps, method steps, algorithms or the like may bedescribed in a sequential order, such processes, methods and algorithmsmay be configured to work in alternate orders. In other words, anysequence or order of steps that may be described in this patentapplication does not, in and of itself, indicate a requirement that thesteps be performed in that order. The steps of processes describedherein may be performed in any order practical. Further, some steps maybe performed simultaneously despite being described or implied asoccurring non-simultaneously (e.g., because one step is described afterthe other step). Moreover, the illustration of a process by itsdepiction in a drawing does not imply that the illustrated process isexclusive of other variations and modifications thereto, does not implythat the illustrated process or any of its steps are necessary to theinvention, and does not imply that the illustrated process is preferred.

Although the invention has been described in detail for the purpose ofillustration based on what is currently considered to be the mostpractical and preferred embodiments, it is to be understood that suchdetail is solely for that purpose and that the invention is not limitedto the disclosed embodiments, but, on the contrary, is intended to covermodifications and equivalent arrangements that are within the spirit andscope of the appended claims, if any. For example, it is to beunderstood that the present invention contemplates that, to the extentpossible, one or more features of any embodiment can be combined withone or more features of any other embodiment.

What is claimed:
 1. A non-transitory computer readable medium havingstored thereon one or more instructions which, when executed by one ormore processors of one or more computers, cause the one or moreprocessors to execute steps of a method for sharing information, themethod comprising the steps of: displaying, on a screen of a firstmobile device, data associated with information of a user of the firstmobile device; receiving, with the first mobile device, one or moreinitial inputs from the user; generating a machine-readable codecorresponding to a subset of data associated with information of theuser wherein the subset of data is embedded in the machine-readablecode, the subset of data comprising a portion of the data associatedwith information of the user; detecting a data change event, wherein thedata change event comprises a change to the subset of data associatedwith information of the user to provide an updated subset of data; andupdating the machine-readable code in real-time in response to detectingthe data change event to provide an updated machine-readable codecorresponding to the updated subset of data associated with informationof the user wherein the updated subset of data is embedded in theupdated machine-readable code.
 2. The computer readable medium of claim1, wherein the machine-readable code is a QR code.
 3. The computerreadable medium of claim 1, wherein the data associated with informationof the user comprises: data associated with a phone number; dataassociated with an email address; data associated with a profilepicture; data associated with a social media profile; data associatedwith an instant messenger identifier; data associated with a websiteaddress; data associated with a username; data associated with aplatform identification; data associated with cryptographic information;data associated with a digital assistant; data associated with aboarding pass; data associated with a ticket for an event; or anycombination thereof.
 4. The computer readable medium of claim 1, whereinupdating the machine-readable code in real-time comprises:authenticating the user if required based on the updated subset of dataassociated with information of the user; receiving validation datagenerated by an external device, the validation data comprising datasigned by the external device with a digital signature forauthorization; and validating the updated machine-readable code based onthe validation data.
 5. The computer readable medium of claim 1, whereindetecting the data change event comprises: changing the subset of dataassociated with information of the user to the updated subset of dataassociated with information of the user based on an indication that theuser shared, with the first mobile device, the subset of data associatedwith information of the user with a system configured to scan mobileboarding passes, where the indication is generated in response to thefirst mobile device sharing the subset of data associated withinformation of the user via scanning the machine-readable code of amobile boarding pass to provide the subset of data of information of theuser to the system configured to scan mobile boarding passes; anddetecting the change of the subset of data associated with informationof the user to the updated subset of data associated with information ofthe user based on the indication that the user shared the subset of dataassociated with information of the user with the system configured toscan mobile boarding passes.
 6. The computer readable medium of claim 1,wherein detecting the data change event comprises: changing the subsetof data associated with information of the user to the updated subset ofdata associated with information of the user based on an indication thatthe user shared, with the first mobile device, the subset of dataassociated with information of the user with a system configured to scanmobile tickets for an event, where the indication is generated inresponse to the first mobile device sharing the subset of dataassociated with information of the user via scanning themachine-readable code of a mobile ticket for an event to provide thesubset of data of information of the user to the system configured toscan mobile tickets for an event; and detecting the change of the subsetof data associated with information of the user to the updated subset ofdata associated with information of the user based on the indicationthat the user shared the subset of data associated with information ofthe user with the system configured to scan mobile tickets for an event.7. The computer readable medium of claim 1, wherein the one or moreinstructions further cause the one or more processors to execute thesteps of: transmitting the updated subset of data associated withinformation embedded in the updated machine-readable code to a secondmobile device; storing a connection history record, the connectionhistory record comprising data associated with transmission of theupdated subset of data associated with information embedded in theupdated machine-readable code to the second mobile device; andgenerating a connection history screen comprising the connection historyrecord and displaying the connection history screen on a screen of thefirst mobile device.
 8. A system for sharing information, the systemcomprising at least one processor programmed or configured to: display,on a screen of a first mobile device, data associated with informationof a user of the first mobile device; receive, with the first mobiledevice, one or more initial inputs from the user; generate amachine-readable code corresponding to a subset of data associated withinformation of the user wherein the subset of data is embedded in themachine-readable code, the subset of data comprising a portion of thedata associated with information of the user; detect a data changeevent, wherein the data change event comprises a change to the subset ofdata associated with information of the user to provide an updatedsubset of data; and update the machine-readable code in real-time inresponse to detecting the data change event to provide an updatedmachine-readable code corresponding to the updated subset of dataassociated with information of the user wherein the updated subset ofdata is embedded in the updated machine-readable code.
 9. The system ofclaim 8, wherein the machine-readable code is a QR code.
 10. The systemof claim 8, wherein the data associated with information of the usercomprises: data associated with a phone number; data associated with anemail address; data associated with a profile picture; data associatedwith a social media profile; data associated with an instant messengeridentifier; data associated with a website address; data associated witha username; data associated with a platform identification; dataassociated with cryptographic information; data associated with adigital assistant; data associated with a boarding pass; data associatedwith a ticket for an event; or any combination thereof.
 11. The systemof claim 8, wherein when updating the machine-readable code inreal-time, the at least one processor is programmed or configured to:authenticate the user if required based on the updated subset of dataassociated with information of the user; receive validation datagenerated by an external device, the validation data comprising datasigned by the external device with a digital signature forauthorization; and validate the updated machine-readable code based onthe validation data.
 12. The system of claim 8, wherein when detectingthe data change event, the at least one processor is programmed orconfigured to: change the subset of data associated with information ofthe user to the updated subset of data associated with information ofthe user based on an indication that the user shared, with the firstmobile device, the subset of data associated with information of theuser with a system configured to scan mobile boarding passes, where theindication is generated in response to the first mobile device sharingthe subset of data associated with information of the user via scanningthe machine-readable code of a mobile boarding pass to provide thesubset of data of information of the user to the system configured toscan mobile boarding passes; and detect the change of the subset of dataassociated with information of the user to the updated subset of dataassociated with information of the user based on the indication that theuser shared the subset of data associated with information of the userwith the system configured to scan mobile boarding passes.
 13. Thesystem of claim 8, wherein when detecting the data change event, the atleast one processor is programmed or configured to: change the subset ofdata associated with information of the user to the updated subset ofdata associated with information of the user based on an indication thatthe user shared, with the first mobile device, the subset of dataassociated with information of the user with a system configured to scanmobile tickets for an event, where the indication is generated inresponse to the first mobile device sharing the subset of dataassociated with information of the user via scanning themachine-readable code of a mobile ticket for an event to provide thesubset of data of information of the user to the system configured toscan mobile tickets for an event; and detect the change of the subset ofdata associated with information of the user to the updated subset ofdata associated with information of the user based on the indicationthat the user shared the subset of data associated with information ofthe user with the system configured to scan mobile tickets for an event.14. The system of claim 8, wherein the at least one processor is furtherprogrammed or configured to: transmit the updated subset of dataassociated with information embedded in the updated machine-readablecode to a second mobile device; store a connection history record, theconnection history record comprising data associated with transmissionof the updated subset of data associated with information embedded inthe updated machine-readable code to the second mobile device; andgenerate a connection history screen comprising the connection historyrecord and displaying the connection history screen on a screen of thefirst mobile device.
 15. A computer-implemented method for sharinginformation, the method comprising: displaying, on a screen of a firstmobile device, data associated with information of a user of the firstmobile device; receiving, with the first mobile device, one or moreinitial inputs from the user; generating a machine-readable codecorresponding to a subset of data associated with information of theuser wherein the subset of data is embedded in the machine-readablecode, the subset of data comprising a portion of the data associatedwith information of the user; detecting a data change event, wherein thedata change event comprises a change to the subset of data associatedwith information of the user to provide an updated subset of data; andupdating the machine-readable code in real-time in response to detectingthe data change event to provide an updated machine-readable codecorresponding to the updated subset of data associated with informationof the user wherein the updated subset of data is embedded in theupdated machine-readable code.
 16. The computer-implemented method ofclaim 15, wherein the machine-readable code is a QR code.
 17. Thecomputer-implemented method of claim 15, wherein the data associatedwith information of the user comprises: data associated with a phonenumber; data associated with an email address; data associated with aprofile picture; data associated with a social media profile; dataassociated with an instant messenger identifier; data associated with awebsite address; data associated with a username; data associated with aplatform identification; data associated with cryptographic information;data associated with a digital assistant; data associated with aboarding pass; data associated with a ticket for an event; or anycombination thereof.
 18. The computer-implemented method claim 15,wherein updating the machine-readable code in real-time comprises:authenticating the user if required based on the updated subset of dataassociated with information of the user; receiving validation datagenerated by an external device, the validation data comprising datasigned by the external device with a digital signature forauthorization; and validating the updated machine-readable code based onthe validation data.
 19. The computer-implemented method of claim 15,wherein detecting the data change event comprises: changing the subsetof data associated with information of the user to the updated subset ofdata associated with information of the user based on an indication thatthe user shared the subset of data associated with information of theuser with a system configured to scan mobile boarding passes, where theindication is generated in response to the first mobile device sharingthe subset of data associated with information of the user via scanningthe machine-readable code of a mobile boarding pass to provide thesubset of data of information of the user to the system configured toscan mobile boarding passes; and detecting the change of the subset ofdata associated with information of the user to the updated subset ofdata associated with information of the user based on the indicationthat the user shared the subset of data associated with information ofthe user with the system configured to scan mobile boarding passes usingthe first mobile device.
 20. The computer-implemented method of claim15, wherein detecting the data change event comprises: changing thesubset of data associated with information of the user to the updatedsubset of data associated with information of the user based on anindication that the user shared the subset of data associated withinformation of the user with a system configured to scan mobile ticketsfor an event, where the indication is generated in response to the firstmobile device sharing the subset of data associated with information ofthe user via scanning the machine-readable code of a mobile ticket foran event to provide the subset of data of information of the user to thesystem configured to scan mobile tickets for an event; and detecting thechange of the subset of data associated with information of the user tothe updated subset of data associated with information of the user basedon the indication that the user shared the subset of data associatedwith information of the user with the system configured to scan mobiletickets for an event using the first mobile device.